
\section{Diagrama de clases}


\includegraphics[scale=0.8]{diagrama.ps}



\paragraph{}
Como se puede observar en el diagrama, los principales actores en nuestra aplicación son las canciones, que forman bibliotecas. Estas bibliotecas son tratadas en cuanto a su información por la interfaz <<Dao>>, TrollingLibrary, que necesita a su vez de un parseador y de un <<Writer>>. Por otro lado, para que las canciones se reproduzcan , necesitan de un <<JMFplayer>>, mientras que para extraer su información , necesitan SmartMusicData.


\section{Anexo de test y tutoriales}
\paragraph{}
Dado que también los test y tutoriales forman una importante parte de nuestra aplicación, pero no son actores del mismo como tales, creemos convenientes hacer una breve reseña en cuanto a cómo están estructurados.

\paragraph{}
Desde el paquete <<test>>, se pueden lanzar todos los test a partir de la clase <<AllTests>>.  Se incluyen por tanto los test relacionados con los tags de las canciones, como los test relacionados con la apertura de ficheros PDF de ayuda al usuario desde la interfaz. Por otro lado, también se pueden ejecutar test relacionados con las carátulas de las canciones, accesible desde <<tests.Artwork>>.

\paragraph{}
Por último, desde el paquete <<tutorials>>, encontramos métodos relacionados con el uso de la librería jaudiotagger, la cual se utiliza para la extracción de información de las canciones. Ha sido de una gran utilidad para tener una referencia de uso de la misma.
